home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / compuserve-file-archive / 08 System Utilities / HCLEAN.BIN / c64.bas
Unknown  |  2019-04-13  |  2.6 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text


This file was not able to be converted.
This format is not currently supported by dexvert.

ConfidenceProgramDetectionMatch TypeSupport
66% dexvert GW-BASIC (document/gwBasic) ext Supported
66% dexvert GFA-BASIC Atari (other/gfaBASICAtari) ext Supported
1% dexvert Amiga BASIC Protected File (other/amigaBASICProtectedFile) ext Unsupported
1% dexvert BAS VBDOS Pro 1.0 Source (other/basVBDOSPro10Source) ext Unsupported
1% dexvert Visual Basic Tokenized Source (other/visualBasicTokenizedSource) ext Unsupported
1% dexvert ZBASIC (other/zbasic) ext Unsupported
100% file data default
100% gt2 Kopftext: '10 REM' default (weak)
100% detectItEasy Format: plain text[LF] default (weak)



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 31 30 20 52 45 4d 3a 50 | 52 4f 47 52 41 4d 20 42 |10 REM:P|ROGRAM B|
|00000010| 59 20 53 41 4d 20 50 45 | 4c 4c 45 52 49 54 45 2c |Y SAM PE|LLERITE,|
|00000020| 20 4a 52 2e 20 20 20 20 | 20 20 20 54 48 49 53 20 | JR. | THIS |
|00000030| 50 52 4f 47 52 41 4d 20 | 49 53 20 50 55 42 4c 49 |PROGRAM |IS PUBLI|
|00000040| 43 20 44 4f 4d 41 49 4e | 0a 32 30 20 52 45 4d 20 |C DOMAIN|.20 REM |
|00000050| 54 48 41 4e 4b 53 20 54 | 4f 20 50 45 54 45 52 20 |THANKS T|O PETER |
|00000060| 42 4f 49 53 56 45 52 54 | 20 41 4e 44 20 54 48 45 |BOISVERT| AND THE|
|00000070| 20 20 54 52 41 4e 53 41 | 43 54 4f 52 20 46 4f 52 | TRANSA|CTOR FOR|
|00000080| 20 54 48 45 20 4d 4f 54 | 4f 52 20 53 50 49 4e 20 | THE MOT|OR SPIN |
|00000090| 52 4f 55 54 49 4e 45 0a | 33 30 20 50 4f 4b 45 35 |ROUTINE.|30 POKE5|
|000000a0| 33 32 38 31 2c 30 30 3a | 50 4f 4b 45 35 33 32 38 |3281,00:|POKE5328|
|000000b0| 30 2c 30 30 3a 50 4f 4b | 45 36 34 36 2c 37 3a 50 |0,00:POK|E646,7:P|
|000000c0| 4f 4b 45 38 30 38 2c 32 | 35 31 0a 34 30 20 50 52 |OKE808,2|51.40 PR|
|000000d0| 49 4e 54 22 93 20 20 20 | 20 20 20 20 20 20 2a 2a |INT". | **|
|000000e0| 48 45 41 44 20 43 4c 45 | 41 4e 45 52 20 56 32 2e |HEAD CLE|ANER V2.|
|000000f0| 33 2a 2a 22 3a 50 52 49 | 4e 54 0a 35 30 20 50 52 |3**":PRI|NT.50 PR|
|00000100| 49 4e 54 22 20 20 20 20 | 20 20 20 20 20 20 42 59 |INT" | BY|
|00000110| 20 53 2e 20 50 45 4c 4c | 45 52 49 54 45 2c 20 4a | S. PELL|ERITE, J|
|00000120| 52 2e 22 3a 47 4f 20 54 | 4f 20 36 30 3a 52 45 4d |R.":GO T|O 60:REM|
|00000130| 22 14 14 14 14 14 14 14 | 14 14 14 14 14 14 14 00 |".......|........|
|00000140| 0a 35 35 20 4e 45 57 3a | 52 45 4d 22 14 14 14 14 |.55 NEW:|REM"....|
|00000150| 14 14 14 14 14 14 14 14 | 00 0a 36 30 20 50 52 49 |........|..60 PRI|
|00000160| 4e 54 22 11 55 53 45 20 | 54 48 49 53 20 50 52 4f |NT".USE |THIS PRO|
|00000170| 47 52 41 4d 20 54 4f 20 | 43 4c 45 41 4e 20 54 48 |GRAM TO |CLEAN TH|
|00000180| 45 20 31 35 34 31 20 44 | 52 49 56 45 48 45 41 44 |E 1541 D|RIVEHEAD|
|00000190| 20 22 3b 0a 37 30 20 50 | 52 49 4e 54 22 55 53 49 | ";.70 P|RINT"USI|
|000001a0| 4e 47 20 48 45 41 44 20 | 43 4c 45 41 4e 49 4e 47 |NG HEAD |CLEANING|
|000001b0| 20 44 49 53 4b 45 54 54 | 45 53 2e 22 0a 38 30 20 | DISKETT|ES.".80 |
|000001c0| 50 52 49 4e 54 22 48 45 | 41 44 20 43 4c 45 41 4e |PRINT"HE|AD CLEAN|
|000001d0| 45 52 20 57 49 4c 4c 20 | 4d 41 4b 45 20 54 48 45 |ER WILL |MAKE THE|
|000001e0| 20 44 52 49 56 45 20 53 | 50 49 4e 20 20 20 46 4f | DRIVE S|PIN FO|
|000001f0| 52 20 41 42 4f 55 54 20 | 33 30 20 53 45 43 4f 4e |R ABOUT |30 SECON|
|00000200| 44 53 2e 22 3b 0a 39 30 | 20 50 52 49 4e 54 22 20 |DS.";.90| PRINT" |
|00000210| 20 54 48 45 52 45 20 57 | 49 4c 4c 20 42 45 20 4e | THERE W|ILL BE N|
|00000220| 4f 20 48 45 41 44 20 4b | 4e 4f 43 4b 20 44 55 52 |O HEAD K|NOCK DUR|
|00000230| 49 4e 47 20 54 48 45 20 | 43 4c 45 41 4e 49 4e 47 |ING THE |CLEANING|
|00000240| 2e 22 0a 31 30 30 20 50 | 52 49 4e 54 22 11 11 22 |.".100 P|RINT".."|
|00000250| 0a 31 31 30 20 50 52 49 | 4e 54 22 9f 2a 2a 44 4f |.110 PRI|NT".**DO|
|00000260| 4e 27 54 20 49 4e 53 45 | 52 54 20 48 45 41 44 20 |N'T INSE|RT HEAD |
|00000270| 43 4c 45 41 4e 49 4e 47 | 20 44 49 53 4b 20 59 45 |CLEANING| DISK YE|
|00000280| 54 21 2a 2a 22 3b 0a 31 | 31 33 20 50 52 49 4e 54 |T!**";.1|13 PRINT|
|00000290| 22 59 4f 55 20 4d 55 53 | 54 20 48 41 56 45 20 41 |"YOU MUS|T HAVE A|
|000002a0| 20 46 4f 52 4d 41 54 54 | 45 44 20 44 49 53 4b 20 | FORMATT|ED DISK |
|000002b0| 49 4e 20 44 52 49 56 45 | 20 46 4f 52 20 48 45 41 |IN DRIVE| FOR HEA|
|000002c0| 44 20 43 45 4e 54 45 52 | 49 4e 47 21 11 22 0a 31 |D CENTER|ING!.".1|
|000002d0| 32 30 20 50 52 49 4e 54 | 22 9e 46 4f 52 20 42 45 |20 PRINT|".FOR BE|
|000002e0| 53 54 20 52 45 53 55 4c | 54 53 20 55 53 45 20 41 |ST RESUL|TS USE A|
|000002f0| 20 44 49 46 46 45 52 45 | 4e 54 20 54 52 41 43 4b | DIFFERE|NT TRACK|
|00000300| 20 20 45 41 43 48 20 54 | 49 4d 45 20 54 48 45 20 | EACH T|IME THE |
|00000310| 50 52 4f 47 52 41 4d 20 | 49 53 20 52 55 4e 22 0a |PROGRAM |IS RUN".|
|00000320| 31 33 30 20 50 52 49 4e | 54 22 11 57 48 49 43 48 |130 PRIN|T".WHICH|
|00000330| 20 54 52 41 43 4b 20 53 | 48 41 4c 4c 20 49 20 43 | TRACK S|HALL I C|
|00000340| 45 4e 54 45 52 20 54 48 | 45 20 48 45 41 44 20 4f |ENTER TH|E HEAD O|
|00000350| 4e 3f 20 28 31 2d 33 35 | 29 00 0a 31 34 30 20 49 |N? (1-35|)..140 I|
|00000360| 4e 50 55 54 20 54 52 0a | 31 35 30 20 49 46 20 54 |NPUT TR.|150 IF T|
|00000370| 52 3e 33 35 54 48 45 4e | 31 33 30 0a 31 36 30 20 |R>35THEN|130.160 |
|00000380| 49 46 20 54 52 3c 31 54 | 48 45 4e 31 33 30 0a 31 |IF TR<1T|HEN130.1|
|00000390| 37 30 20 4f 50 45 4e 31 | 35 2c 38 2c 31 35 3a 4f |70 OPEN1|5,8,15:O|
|000003a0| 50 45 4e 20 32 2c 38 2c | 32 2c 22 23 22 0a 31 38 |PEN 2,8,|2,"#".18|
|000003b0| 30 20 50 52 49 4e 54 23 | 31 35 2c 22 55 31 2c 32 |0 PRINT#|15,"U1,2|
|000003c0| 2c 30 22 3b 54 52 3b 22 | 30 22 0a 31 39 30 20 49 |,0";TR;"|0".190 I|
|000003d0| 4e 50 55 54 23 31 35 2c | 41 24 2c 42 24 2c 43 24 |NPUT#15,|A$,B$,C$|
|000003e0| 2c 44 24 0a 32 30 30 20 | 49 46 20 41 24 3c 3e 22 |,D$.200 |IF A$<>"|
|000003f0| 30 30 22 54 48 45 4e 33 | 37 30 0a 32 31 30 20 43 |00"THEN3|70.210 C|
|00000400| 4c 4f 53 45 32 3a 43 4c | 4f 53 45 31 35 0a 32 32 |LOSE2:CL|OSE15.22|
|00000410| 30 20 50 52 49 4e 54 22 | 93 11 05 20 20 2a 2a 57 |0 PRINT"|... **W|
|00000420| 41 49 54 20 46 4f 52 20 | 44 52 49 56 45 20 54 4f |AIT FOR |DRIVE TO|
|00000430| 20 53 54 4f 50 20 53 50 | 49 4e 4e 49 4e 47 2a 2a | STOP SP|INNING**|
|00000440| 11 11 22 0a 32 33 30 20 | 46 4f 52 20 57 3d 31 54 |..".230 |FOR W=1T|
|00000450| 4f 32 35 30 30 3a 4e 45 | 58 54 57 0a 32 33 33 20 |O2500:NE|XTW.233 |
|00000460| 50 52 49 4e 54 22 9f 52 | 45 4d 4f 56 45 20 46 4f |PRINT".R|EMOVE FO|
|00000470| 52 4d 41 54 54 45 44 20 | 44 49 53 4b 2e 22 0a 32 |RMATTED |DISK.".2|
|00000480| 34 30 20 50 52 49 4e 54 | 22 11 49 4e 53 45 52 54 |40 PRINT|".INSERT|
|00000490| 20 48 45 41 44 20 43 4c | 45 41 4e 49 4e 47 20 44 | HEAD CL|EANING D|
|000004a0| 49 53 4b 20 41 4e 44 20 | 50 52 45 53 53 20 41 4e |ISK AND |PRESS AN|
|000004b0| 59 20 4b 45 59 20 54 4f | 20 42 45 47 49 4e 20 43 |Y KEY TO| BEGIN C|
|000004c0| 4c 45 41 4e 49 4e 47 2e | 22 0a 32 35 30 20 47 45 |LEANING.|".250 GE|
|000004d0| 54 43 24 3a 49 46 43 24 | 3d 22 22 54 48 45 4e 32 |TC$:IFC$|=""THEN2|
|000004e0| 35 30 0a 32 36 30 20 50 | 52 49 4e 54 22 93 11 11 |50.260 P|RINT"...|
|000004f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 9a 2a 2a | | .**|
|00000500| 43 09 00 41 4e 49 4e 47 | 2a 2a 22 3a 50 52 49 4e |C..ANING|**":PRIN|
|00000510| 54 0a 32 37 30 20 52 45 | 4d 20 31 35 34 31 20 4d |T.270 RE|M 1541 M|
|00000520| 4f 54 4f 52 20 53 50 49 | 4e 20 52 4f 55 54 49 4e |OTOR SPI|N ROUTIN|
|00000530| 45 0a 32 38 30 20 52 45 | 4d 20 45 58 45 43 55 54 |E.280 RE|M EXECUT|
|00000540| 45 20 4d 4c 20 41 54 20 | 24 46 39 37 45 20 54 4f |E ML AT |$F97E TO|
|00000550| 20 53 54 41 52 54 20 4d | 4f 54 4f 52 0a 32 39 30 | START M|OTOR.290|
|00000560| 20 4f 50 45 4e 31 35 2c | 38 2c 31 35 0a 33 30 30 | OPEN15,|8,15.300|
|00000570| 20 50 52 49 4e 54 23 31 | 35 2c 22 4d 2d 45 22 43 | PRINT#1|5,"M-E"C|
|00000580| 48 52 24 28 31 32 36 29 | 43 48 52 24 28 32 34 39 |HR$(126)|CHR$(249|
|00000590| 29 0a 33 30 35 20 50 52 | 49 4e 54 22 13 11 11 11 |).305 PR|INT"....|
|000005a0| 11 11 11 11 11 11 11 20 | 48 45 41 44 20 43 4c 45 |....... |HEAD CLE|
|000005b0| 41 4e 49 4e 47 20 57 49 | 4c 4c 20 45 4e 44 20 49 |ANING WI|LL END I|
|000005c0| 4e 20 33 31 20 53 45 43 | 4f 4e 44 53 2e 22 0a 33 |N 31 SEC|ONDS.".3|
|000005d0| 31 30 20 58 3d 33 30 3a | 46 4f 52 20 49 3d 30 54 |10 X=30:|FOR I=0T|
|000005e0| 4f 33 30 3a 46 4f 52 20 | 4a 3d 31 54 4f 39 30 30 |O30:FOR |J=1TO900|
|000005f0| 3a 4e 45 58 54 4a 3a 52 | 45 4d 20 4d 4f 54 4f 52 |:NEXTJ:R|EM MOTOR|
|00000600| 20 54 49 4d 45 52 0a 33 | 31 32 20 49 46 20 58 3c | TIMER.3|12 IF X<|
|00000610| 31 30 20 54 48 45 4e 20 | 33 31 36 0a 33 31 34 20 |10 THEN |316.314 |
|00000620| 50 52 49 4e 54 22 13 11 | 11 11 11 11 11 11 11 11 |PRINT"..|........|
|00000630| 11 22 54 41 42 28 32 36 | 29 3a 50 52 49 4e 54 58 |."TAB(26|):PRINTX|
|00000640| 3a 47 4f 54 4f 33 31 38 | 0a 33 31 36 20 50 52 49 |:GOTO318|.316 PRI|
|00000650| 4e 54 22 13 11 11 11 11 | 11 11 11 11 11 11 22 54 |NT".....|......"T|
|00000660| 41 42 28 32 36 29 3a 50 | 52 49 4e 54 22 20 22 3b |AB(26):P|RINT" ";|
|00000670| 3a 50 52 49 4e 54 58 0a | 33 31 38 20 58 3d 58 2d |:PRINTX.|318 X=X-|
|00000680| 31 3a 4e 45 58 54 49 0a | 33 32 30 20 52 45 4d 20 |1:NEXTI.|320 REM |
|00000690| 45 58 45 43 55 54 45 20 | 4d 4c 20 41 54 20 24 46 |EXECUTE |ML AT $F|
|000006a0| 39 45 38 20 54 4f 20 53 | 54 4f 50 20 4d 4f 54 4f |9E8 TO S|TOP MOTO|
|000006b0| 52 0a 33 33 30 20 50 52 | 49 4e 54 23 31 35 2c 22 |R.330 PR|INT#15,"|
|000006c0| 4d 2d 45 22 43 48 52 24 | 28 32 33 32 29 43 48 52 |M-E"CHR$|(232)CHR|
|000006d0| 24 28 32 34 39 29 0a 33 | 34 30 20 43 4c 4f 53 45 |$(249).3|40 CLOSE|
|000006e0| 20 31 35 0a 33 35 30 20 | 50 52 49 4e 54 3a 50 52 | 15.350 |PRINT:PR|
|000006f0| 49 4e 54 22 11 9e 20 20 | 20 20 20 20 2a 2a 48 45 |INT".. | **HE|
|00000700| 41 44 20 53 48 4f 55 4c | 44 20 4e 4f 57 20 42 45 |AD SHOUL|D NOW BE|
|00000710| 20 43 4c 45 41 4e 2a 2a | 22 0a 33 36 30 20 45 4e | CLEAN**|".360 EN|
|00000720| 44 0a 33 37 30 20 50 52 | 49 4e 54 22 93 96 20 20 |D.370 PR|INT".. |
|00000730| 20 20 20 20 20 45 52 52 | 4f 52 20 4f 4e 20 48 45 | ERR|OR ON HE|
|00000740| 41 44 20 4d 4f 56 45 21 | 21 22 0a 33 38 30 20 50 |AD MOVE!|!".380 P|
|00000750| 52 49 4e 54 41 24 2c 42 | 24 2c 43 24 2c 44 24 0a |RINTA$,B|$,C$,D$.|
|00000760| 33 39 30 20 50 52 49 4e | 54 22 11 05 44 4f 20 59 |390 PRIN|T"..DO Y|
|00000770| 4f 09 00 57 49 53 48 20 | 54 4f 20 43 4f 4e 54 49 |O..WISH |TO CONTI|
|00000780| 4e 55 45 3f 20 28 59 20 | 4f 52 20 4e 29 22 0a 34 |NUE? (Y |OR N)".4|
|00000790| 30 30 20 47 45 54 20 45 | 24 3a 49 46 45 24 3d 22 |00 GET E|$:IFE$="|
|000007a0| 22 54 48 45 4e 34 30 30 | 0a 34 31 30 20 49 46 20 |"THEN400|.410 IF |
|000007b0| 45 24 3d 22 4e 22 54 48 | 45 4e 43 4c 4f 53 45 31 |E$="N"TH|ENCLOSE1|
|000007c0| 35 3a 43 4c 4f 53 45 32 | 3a 53 59 53 36 34 37 33 |5:CLOSE2|:SYS6473|
|000007d0| 38 0a 34 32 30 20 49 46 | 20 45 24 3d 22 59 22 54 |8.420 IF| E$="Y"T|
|000007e0| 48 45 4e 34 34 30 0a 34 | 33 30 20 47 4f 20 54 4f |HEN440.4|30 GO TO|
|000007f0| 20 33 39 30 0a 34 34 30 | 20 50 52 49 4e 54 22 11 | 390.440| PRINT".|
|00000800| 44 4f 20 59 4f 55 20 48 | 41 56 45 20 41 20 50 52 |DO YOU H|AVE A PR|
|00000810| 4f 50 45 52 4c 59 20 46 | 4f 52 4d 41 54 54 45 44 |OPERLY F|ORMATTED|
|00000820| 20 44 49 53 4b 20 49 4e | 54 48 45 20 44 49 52 56 | DISK IN|THE DIRV|
|00000830| 45 20 4e 4f 57 3f 20 28 | 59 20 4f 52 20 4e 29 22 |E NOW? (|Y OR N)"|
|00000840| 0a 34 35 30 20 47 45 54 | 20 46 24 3a 20 49 46 20 |.450 GET| F$: IF |
|00000850| 46 24 3d 22 22 54 48 45 | 4e 34 35 30 0a 34 36 30 |F$=""THE|N450.460|
|00000860| 20 49 46 20 46 24 3d 22 | 59 22 54 48 45 4e 50 52 | IF F$="|Y"THENPR|
|00000870| 49 4e 54 23 31 35 2c 22 | 49 22 3a 47 4f 54 4f 35 |INT#15,"|I":GOTO5|
|00000880| 35 30 0a 34 37 30 20 49 | 46 20 46 24 3d 22 4e 22 |50.470 I|F F$="N"|
|00000890| 54 48 45 4e 43 4c 4f 53 | 45 31 35 2c 38 2c 31 35 |THENCLOS|E15,8,15|
|000008a0| 3a 4f 50 45 4e 31 35 2c | 38 2c 31 35 3a 47 4f 54 |:OPEN15,|8,15:GOT|
|000008b0| 4f 34 39 30 0a 34 38 30 | 20 47 4f 54 4f 34 34 30 |O490.480| GOTO440|
|000008c0| 0a 34 39 30 20 50 52 49 | 4e 54 22 11 50 4c 41 43 |.490 PRI|NT".PLAC|
|000008d0| 45 20 41 4e 59 20 46 4f | 52 4d 41 54 54 45 44 20 |E ANY FO|RMATTED |
|000008e0| 44 49 53 4b 20 49 4e 20 | 44 52 49 56 45 20 41 4e |DISK IN |DRIVE AN|
|000008f0| 44 20 20 20 50 52 45 53 | 53 20 53 50 41 43 45 20 |D PRES|S SPACE |
|00000900| 54 4f 20 43 4f 4e 54 49 | 4e 55 45 2e 22 0a 35 30 |TO CONTI|NUE.".50|
|00000910| 30 20 47 45 54 20 47 24 | 3a 49 46 47 24 3d 22 22 |0 GET G$|:IFG$=""|
|00000920| 54 48 45 4e 35 30 30 0a | 35 31 30 20 49 46 20 47 |THEN500.|510 IF G|
|00000930| 24 3d 22 20 22 54 48 45 | 4e 50 52 49 4e 54 23 31 |$=" "THE|NPRINT#1|
|00000940| 35 2c 22 49 22 3a 47 4f | 54 4f 35 35 30 0a 35 32 |5,"I":GO|TO550.52|
|00000950| 30 20 47 4f 54 4f 34 39 | 30 0a 35 33 30 20 43 4c |0 GOTO49|0.530 CL|
|00000960| 4f 53 45 20 31 35 3a 43 | 4c 4f 53 45 32 3a 50 52 |OSE 15:C|LOSE2:PR|
|00000970| 49 4e 54 22 93 22 3a 47 | 4f 54 4f 31 30 30 0a 35 |INT".":G|OTO100.5|
|00000980| 34 30 20 47 4f 54 4f 34 | 39 30 0a 35 35 30 20 49 |40 GOTO4|90.550 I|
|00000990| 4e 50 55 54 23 31 35 2c | 41 24 0a 35 36 30 20 49 |NPUT#15,|A$.560 I|
|000009a0| 46 20 41 24 3d 22 30 30 | 22 54 48 45 4e 47 4f 54 |F A$="00|"THENGOT|
|000009b0| 4f 35 33 30 0a 35 37 30 | 20 49 46 20 41 24 3c 3e |O530.570| IF A$<>|
|000009c0| 22 30 30 22 54 48 45 4e | 50 52 49 4e 54 20 22 96 |"00"THEN|PRINT ".|
|000009d0| 20 20 20 20 20 20 20 44 | 49 53 4b 20 49 4e 49 54 | D|ISK INIT|
|000009e0| 49 41 4c 49 5a 45 20 45 | 52 52 4f 52 22 0a 32 33 |IALIZE E|RROR".23|
|000009f0| 37 32 20 0a 35 39 30 20 | 47 45 54 20 53 24 3a 49 |72 .590 |GET S$:I|
|00000a00| 46 20 53 24 3d 22 22 54 | 48 45 4e 35 39 30 0a 36 |F S$=""T|HEN590.6|
|00000a10| 30 30 20 49 46 20 53 24 | 3d 22 59 22 54 48 45 4e |00 IF S$|="Y"THEN|
|00000a20| 47 4f 54 4f 34 39 30 0a | 36 31 30 20 49 46 20 53 |GOTO490.|610 IF S|
|00000a30| 24 3d 22 4e 22 54 48 45 | 4e 43 4c 4f 53 45 31 35 |$="N"THE|NCLOSE15|
|00000a40| 3a 43 4c 4f 53 45 32 3a | 53 59 53 36 34 37 33 38 |:CLOSE2:|SYS64738|
|00000a50| 0a 36 32 30 20 47 4f 54 | 4f 35 38 30 0a |.620 GOT|O580. |
+--------+-------------------------+-------------------------+--------+--------+